| All Test Modules | GitHub Repository | Designed for use with JUnit. |
| Tests | Failures | Errors | Skipped | Success rate | Time |
|---|---|---|---|---|---|
| 250 | 0 | 0 | 2 | 100.00% | 4.625 |
| Note: failures are anticipated and checked for with assertions while errors are unanticipated. |
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Collects nodes in ReferenceHolder | Success | 0.012 | |
| Accumulates data across multiple node types | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| with(ReferenceHolder) creates builder | Success | 0.000 | |
| with(ReferenceHolder, Set) creates builder with custom node set | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Multiple visitors can be chained | Success | 0.001 | |
| Builder returns itself for chaining | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds assignments | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds enhanced for loops | Success | 0.001 | |
| Provides access to loop variable | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds if statements | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds all method declarations | Success | 0.005 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Filters by method name | Success | 0.002 | |
| Finds all method invocations | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds return statements | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds type declarations | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds variable declarations | Success | 0.006 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| processor() provides access to underlying ASTProcessor | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Negates simple name without parentheses | Success | 0.004 | |
| null AST throws exception | Success | 0.001 | |
| Negates infix expression with parentheses | Success | 0.000 | |
| null condition throws exception | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| SimpleName not matching varName is not identity | Success | 0.000 | |
| SimpleName matching varName is identity | Success | 0.001 | |
| InfixExpression is not identity | Success | 0.001 | |
| null varName returns false | Success | 0.003 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| SimpleName is not negated | Success | 0.000 | |
| PrefixExpression with MINUS is not negated | Success | 0.000 | |
| PrefixExpression with NOT is negated | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| SimpleName does not need parentheses | Success | 0.000 | |
| InfixExpression needs parentheses | Success | 0.000 | |
| null input throws exception | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Strips negation from PrefixExpression with NOT | Success | 0.001 | |
| Returns original if not negated | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Validation: processEach without compilationUnit should throw | Success | 0.001 | |
| Collect annotations using collect() method | Success | 0.006 | |
| Find @SuppressWarnings annotations (SingleMemberAnnotation) | Success | 0.007 | |
| Find @Override annotations | Success | 0.004 | |
| Find @Deprecated annotations by fully qualified name | Success | 0.003 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Validation: FieldVisitorBuilder requires both annotation and type | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Find static imports | Success | 0.007 | |
| Find regular imports | Success | 0.009 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Find single method call | Success | 0.004 | |
| Collect method calls using collect() | Success | 0.010 | |
| Find multiple method calls | Success | 0.007 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Early termination when processor returns false | Success | 0.005 | |
| Excluding processed nodes | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ReferenceHolder can be used to collect data | Success | 0.009 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Multiple nodes are correctly stored in ReferenceHolder | Success | 0.018 | |
| ReferenceHolder is correctly populated in processEach and accessible afterwards | Success | 0.020 | |
| ReferenceHolder.get() returns null for non-existent key - edge case from PR #494 | Success | 0.015 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| collect() gathers all found nodes | Success | 0.038 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| forAnnotation skips already processed nodes | Success | 0.023 | |
| forAnnotation finds MarkerAnnotation and populates ReferenceHolder correctly | Success | 0.012 | |
| forAnnotation with andImports also finds imports | Success | 0.011 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| forField with annotation finds FieldDeclaration | Success | 0.013 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| forImport finds ImportDeclaration and populates ReferenceHolder correctly | Success | 0.016 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| forMethodCalls with andStaticImports and andImportsOf | Success | 0.027 | |
| forMethodCalls finds MethodInvocation and populates ReferenceHolder correctly | Success | 0.025 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| METHOD_DEFAULT_CHARSET is 'defaultCharset' | Success | 0.000 | |
| METHOD_GET_PROPERTY is 'getProperty' | Success | 0.000 | |
| METHOD_LINE_SEPARATOR is 'lineSeparator' | Success | 0.000 | |
| FIELD_UTF8 is 'UTF_8' | Success | 0.000 | |
| METHOD_TOSTRING is 'toString' | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| JAVA_LANG_DOUBLE is 'java.lang.Double' | Success | 0.001 | |
| JAVA_LANG_STRING is 'java.lang.String' | Success | 0.000 | |
| JAVA_LANG_MATH is 'java.lang.Math' | Success | 0.000 | |
| JAVA_LANG_LONG is 'java.lang.Long' | Success | 0.000 | |
| JAVA_LANG_INTEGER is 'java.lang.Integer' | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| METHOD_CONCAT is 'concat' | Success | 0.001 | |
| METHOD_SUM is 'sum' | Success | 0.000 | |
| METHOD_MIN is 'min' | Success | 0.001 | |
| METHOD_MAX is 'max' | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| METHOD_STREAM is 'stream' | Success | 0.000 | |
| METHOD_FOREACH is 'forEach' | Success | 0.000 | |
| METHOD_REDUCE is 'reduce' | Success | 0.000 | |
| METHOD_ANY_MATCH is 'anyMatch' | Success | 0.000 | |
| METHOD_NONE_MATCH is 'noneMatch' | Success | 0.000 | |
| METHOD_FILTER is 'filter' | Success | 0.004 | |
| METHOD_MAP is 'map' | Success | 0.000 | |
| METHOD_ALL_MATCH is 'allMatch' | Success | 0.000 | |
| METHOD_FOR_EACH_ORDERED is 'forEachOrdered' | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Chaining stops after first match | Success | 0.007 | |
| isHandled() returns true after match | Success | 0.006 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ifPrefixIncrementOrDecrement matches decrement | Success | 0.015 | |
| ifPrefixExpression matches PrefixExpression | Success | 0.002 | |
| ifMethodInvocation matches MethodInvocation | Success | 0.004 | |
| ifSimpleName matches SimpleName | Success | 0.003 | |
| ifAssignmentWithOperator matches specific operator | Success | 0.003 | |
| ifPostfixIncrementOrDecrement matches increment | Success | 0.006 | |
| ifAssignment matches Assignment | Success | 0.006 | |
| ifMethodInvocationNamed matches by method name | Success | 0.007 | |
| ifPostfixExpression matches PostfixExpression | Success | 0.006 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| isHandled() returns false initially | Success | 0.006 | |
| on() creates NodeMatcher instance | Success | 0.005 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ifTypeMatching with predicate | Success | 0.007 | |
| ifType matches by class type | Success | 0.006 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ifThrowStatement matches ThrowStatement | Success | 0.008 | |
| ifReturnStatement matches ReturnStatement | Success | 0.005 | |
| ifIfStatementWithElse matches if with else | Success | 0.010 | |
| ifVariableDeclaration matches VariableDeclarationStatement | Success | 0.006 | |
| ifContinueStatement matches ContinueStatement | Success | 0.013 | |
| ifIfStatement matches IfStatement | Success | 0.007 | |
| ifBlock matches Block | Success | 0.006 | |
| ifExpressionStatement matches ExpressionStatement | Success | 0.007 | |
| ifBreakStatement matches BreakStatement | Success | 0.006 | |
| ifVariableDeclarationMatching with predicate | Success | 0.008 | |
| ifIfStatementWithoutElse matches if without else | Success | 0.006 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| orElse does not execute when already handled | Success | 0.007 | |
| orElse executes when no matcher handled | Success | 0.005 | |
| orElseGet returns empty when already handled | Success | 0.007 | |
| orElseGet returns Optional when not handled | Success | 0.006 | |
| orElseDo executes runnable when not handled | Success | 0.003 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| isControlFlowStatement returns true for throw | Success | 0.006 | |
| isControlFlowStatement returns true for continue | Success | 0.005 | |
| getExpression returns Optional with expression | Success | 0.007 | |
| getAssignment returns empty for non-assignment | Success | 0.006 | |
| getAssignment returns Optional with assignment | Success | 0.003 | |
| isAssignmentStatement returns false for non-assignment | Success | 0.008 | |
| isControlFlowStatement returns true for return | Success | 0.005 | |
| isAssignmentStatement returns true for assignment | Success | 0.005 | |
| isControlFlowStatement returns true for break | Success | 0.005 | |
| isControlFlowStatement returns false for variable declaration | Success | 0.006 | |
| getExpression returns empty for non-expression statement | Success | 0.006 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ifFirst executes for first statement | Success | 0.037 | |
| ifLast executes for last statement | Success | 0.011 | |
| ifNotLast executes for non-last statement | Success | 0.018 | |
| ifLast does not execute for non-last statement | Success | 0.010 | |
| ifOnly executes for only statement | Success | 0.008 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Context chaining with ifLast | Success | 0.012 | |
| getRemainingCount is zero for last statement | Success | 0.008 | |
| Single statement is first, last, and only | Success | 0.011 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| processBlock allows early termination | Success | 0.020 | |
| forSingle creates context for single statement | Success | 0.011 | |
| forEachInBlock processes all statements | Success | 0.013 | |
| processBlock returns empty when no match | Success | 0.010 | |
| forStatement creates context with position info | Success | 0.011 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| getRemainingStatements returns empty for last statement | Success | 0.010 | |
| getPrecedingStatements returns statements before current | Success | 0.008 | |
| getRemainingStatements returns statements after current | Success | 0.007 | |
| getPrecedingStatements returns empty for first statement | Success | 0.007 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| nextIs returns true for matching type | Success | 0.007 | |
| nextIs with predicate returns true when both match | Success | 0.027 | |
| nextMatches returns true when predicate matches | Success | 0.010 | |
| matcher returns NodeMatcher for statement | Success | 0.007 | |
| nextMatches returns false when predicate does not match | Success | 0.007 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| getNextStatement returns next statement | Success | 0.009 | |
| getPreviousStatement returns previous statement | Success | 0.006 | |
| getPreviousStatement returns empty for first statement | Success | 0.006 | |
| getStatementAt returns empty for out of bounds | Success | 0.006 | |
| getNextStatement returns empty for last statement | Success | 0.006 | |
| getStatementAt returns statement at negative offset | Success | 0.007 | |
| getStatementAt returns statement at positive offset | Success | 0.008 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| getRemainingCount returns correct count | Success | 0.011 | |
| isMiddle returns false for first statement | Success | 0.007 | |
| hasNext returns false for last statement | Success | 0.006 | |
| isOnly returns true for single statement | Success | 0.006 | |
| hasNext returns true when there are more statements | Success | 0.006 | |
| isLast returns true for last statement | Success | 0.006 | |
| isMiddle returns true for middle statement | Success | 0.006 | |
| isFirst returns false for non-first statement | Success | 0.006 | |
| isFirst returns true for first statement | Success | 0.006 | |
| hasPrevious returns true when there are previous statements | Success | 0.006 | |
| hasPrevious returns false for first statement | Success | 0.006 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testAnnotationPatternMatching | Success | 0.504 | |
| testNoMatchesForDifferentAnnotation | Success | 0.017 | |
| testAnnotationWithQualifiedType | Success | 0.008 | |
| testMultipleAnnotationMatches | Success | 0.011 | |
| testAnnotationWithPlaceholder | Success | 0.032 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testMultiPlaceholderConsistencyCheck | Success | 0.003 | |
| testMultiPlaceholderMatchesZeroArguments | Success | 0.002 | |
| testMultiPlaceholderMatchesOneArgument | Success | 0.002 | |
| testMultiPlaceholderMatchesMultipleArguments | Success | 0.002 | |
| testMultiPlaceholderMatchesVariousArgumentTypes | Success | 0.002 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testSimpleField | Success | 0.005 | |
| testFieldWithPlaceholderType | Success | 0.002 | |
| testSimpleMarkerAnnotation | Success | 0.002 | |
| testSimpleMethodCall | Success | 0.006 | |
| testSimpleImport | Success | 0.002 | |
| testMultipleImports | Success | 0.003 | |
| testFieldWithAnnotation | Success | 0.003 | |
| testMultipleAnnotationsOnSameElement | Success | 0.003 | |
| testMethodCallWithMultipleArguments | Success | 0.002 | |
| testAnnotationWithParameters | Success | 0.003 | |
| testMethodCallWithPlaceholderQualifier | Success | 0.002 | |
| testStaticImport | Success | 0.002 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testParseSimpleExpression | Success | 0.001 | |
| testParsePlaceholderExpression | Success | 0.001 | |
| testParseMethodInvocation | Success | 0.002 | |
| testParseIfStatement | Skipped | org.opentest4j.AssertionFailedError: Parser should return a non-null node ==> expected: not <null>
at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:152)
at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
at org.junit.jupiter.api.AssertNotNull.failNull(AssertNotNull.java:49)
at org.junit.jupiter.api.AssertNotNull.assertNotNull(AssertNotNull.java:35)
at org.junit.jupiter.api.Assertions.assertNotNull(Assertions.java:312)
at org.sandbox.jdt.triggerpattern.test.PatternParserTest.testParseIfStatement(PatternParserTest.java:73)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
|
0.000 |
| testParseReturnStatement | Success | 0.002 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testNonPlaceholderMustMatchExactly | Success | 0.004 | |
| testMultipleSamePlaceholdersMustMatch | Success | 0.003 | |
| testDifferentPlaceholdersBindIndependently | Success | 0.002 | |
| testPlaceholderBinds | Success | 0.002 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testMultipleSamePlaceholder | Success | 0.016 | |
| testNoMatchesFound | Success | 0.010 | |
| testFindSingleMatch | Success | 0.007 | |
| testStatementPattern | Skipped | org.opentest4j.AssertionFailedError: Should find one statement pattern match ==> expected: <1> but was: <0>
at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
at org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:150)
at org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:563)
at org.sandbox.jdt.triggerpattern.test.TriggerPatternEngineTest.testStatementPattern(TriggerPatternEngineTest.java:134)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
|
0.000 |
| testFindMultipleMatches | Success | 0.008 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testAncestorNavigation | Success | 0.030 | |
| testAssignmentByOperator | Success | 0.007 | |
| testHierarchicalSearch | Success | 0.005 | |
| testInfixExpressionByOperator | Success | 0.014 | |
| testMethodDeclarationByName | Success | 0.001 | |
| testSingleVisitor | Success | 0.001 | |
| testCatchClauseByExceptionType | Success | 0.036 | |
| testFieldDeclarationByType | Success | 0.028 | |
| testClassInstanceCreationWithTypeAndNavigate | Success | 0.001 | |
| testMethodInvocationFiltering | Success | 0.007 | |
| testTypeDeclarationByName | Success | 0.001 | |
| testSuperMethodInvocationByName | Success | 0.018 | |
| testBasicChaining | Success | 0.009 | |
| testForStatementWithTypeFilter | Success | 0.028 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testCoordinatedMultiPhaseProcessing | Success | 0.028 | |
| testCombiningVisitorsWithOr | Success | 0.003 | |
| testCombiningVisitorsWithAnd | Success | 0.003 | |
| testDynamicVisitorRemoval | Success | 0.001 | |
| testTrackingProcessedNodes | Success | 0.001 | |
| testNegateFilter | Success | 0.001 | |
| testStatefulVisitorBehavior | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testMethodNameFiltering | Success | 0.001 | |
| testMethodNameFilteringTraditional | Success | 0.000 | |
| testTraditionalVisitorApproach | Success | 0.000 | |
| testLambdaExpression | Success | 0.000 | |
| testSkipChildNodes | Success | 0.001 | |
| testMultipleNodeTypes | Success | 0.001 | |
| testVisitEndCallback | Success | 0.004 | |
| testBasicMethodReference | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| matcherTest | Success | 0.005 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testCountingWithStaticMethod | Success | 0.016 | |
| testComplexDataStructures | Success | 0.003 | |
| testCollectingNodePositions | Success | 0.000 | |
| testCountingNodes | Success | 0.003 | |
| testLazyInitialization | Success | 0.002 | |
| testSharedDataBetweenCallbacks | Success | 0.002 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testCallbackSignatures | Success | 0.002 | |
| testBasicUsagePattern | Success | 0.001 | |
| testVisitEndCallbacks | Success | 0.004 | |
| testApiOverview | Success | 0.000 | |
| testDataSharingPatterns | Success | 0.004 | |
| testStaticHelperMethods | Success | 0.001 | |
| testVisitorRegistration | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testNestedHierarchicalSearch | Success | 0.005 | |
| testFluentApiWithMethodFiltering | Success | 0.005 | |
| testMethodInvocationByType | Success | 0.001 | |
| testMultiPhaseProcessing | Success | 0.007 | |
| testSimpleFluentApi | Success | 0.004 | |
| testDynamicVisitorModification | Success | 0.001 | |
| testFluentApiWithNavigation | Success | 0.006 | |
| testComplexDataCollection | Success | 0.006 |